b282635b05569763173220bf74805d0b20e6d085,java/src/org/broadinstitute/sting/playground/gatk/walkers/variants/VECFisherStrand.java,VECFisherStrand,computePValue,#number[][]#,122
Before Change
int[] colSums = { sumColumn(table, 0), sumColumn(table, 1) };
int N = rowSums[0] + rowSums[1];
pCutoff *= (double) Arithmetic.factorial(rowSums[0]);
pCutoff *= (double) Arithmetic.factorial(rowSums[1]);
pCutoff *= (double) Arithmetic.factorial(colSums[0]);
pCutoff *= (double) Arithmetic.factorial(colSums[1]);
After Change
int N = rowSums[0] + rowSums[1];
// calculate in log space so we don't die with high numbers
double pCutoff = factorials.get(rowSums[0])
+ factorials.get(rowSums[1])
+ factorials.get(colSums[0])
+ factorials.get(colSums[1])
- factorials.get(table[0][0])